1，什么是子组件？什么是父组件  <br/>
2，嵌套对象解构   <br/>
3，数组解构   <br/>
4，使用 “展开运算符” 解构赋值  <br/>
5，... 展开运算符对  "对象操作"  <br/>
6，解构时没有传递参数 使用默认值  <br/>




1， <br/>
	子组件 与 父组件  <br/>
	<script>
		// 子组件
		const App = () => {
			return '<div></div>'
		}

		// 父组件
		const Element = () => {
			return (
				`<div>
					<App />
				</div`
			)
		}
	</script>
2， <br/>
	对象层次较深，也可以解构  <br/>
	<script>
		let obj = {
			a: {
				b: {
					c: 5
				}
			}
		}
		const {a: { b }} = obj
		console.log( b.c ) // 5
	</script>
3， <br/>
	数组中需要解构 就写上， 不需要解构的 用逗号代替  <br/>
	<script>
		let arr = [1, 2, 3]
		const [, d, ] = arr
		console.log(d) // 2
	</script>
4， <br/>
	使用  ... 展开运算符解构赋值,  展开运算符 在最后末尾， 否则报错  <br/>
	<script>
		let arr2 = [1, 2, 3, 4]
		let [ e, ...arg ] = arr2
		console.log('e', e, arg) // 1      [2, 3, 4]
	</script>
5， <br/>
	... 展开运算符对  "对象操作"  <br/>
	<script>
		let json = {
			name1: 1,
			name2: 2,
			name3: 3
		}
		let { ...json2 } = json
		console.log('json2', json2)
	</script>
6， <br/>
	解构时没有传递参数 使用默认值  <br/>
	<script>
		function ajax(url, options) {
			const { timeout = 0, jsonp = true } = options
			console.log(url, timeout, jsonp)
		}

		ajax('baidu.com', {
			timeout: 1000,
			jsonp: false
		}) // baidu.com 1000 false
	</script>




































